package com.wedu.DAO;

import com.wedu.entity.Job;
import com.wedu.entity.User;

import java.util.List;

public interface UserDao {
    //根据id查找用户对象(uid,acid)
    User staff(String uid);
    //根据uid判断是否为在校人员
    User school_staff(String uid);
    //判断自动生成acid是否已经存在
    User acid_1(String acid);
    //注册添加用户信息
    int add_user(User user);
    //修改用户密码
    int update_user(String id,String password);
    //修改登录次数
    void update_index(int index,String id);
    //修改用户信息
    int update_user(User user);
    //修改用户等级
    int update_level(String acid,int level);
    //删除用户
    void remove_user(String acid);
    //添加在校人员
    int addPersonnel(String id,String name);
    //查询所有用户信息
    List<User> user();
    //兼职发布人员发布兼职信息
    void add_information(Job job);
    //查询所有的兼职信息
    List<Job> job(String acid);
    //根据did返回已投放兼职信息
    Job information(int did,String acid);
    //查询撤销兼职正在进行中的兼职人员acid，并删除
    List<String> acid(int did);
    //更新兼职人员余额
    void update_user_balance(String acid,double salary);
    //撤销兼职信息
    void revoke_information(int did);
    //查询所有的待审批兼职信息
    List<Job> information();
    //跟据did查找兼职信息并返回兼职信息
    Job information(int did);
    //管理员处理待审批兼职信息
    void handleG(int did,int status);
    //查询所有已通过审核的兼职信息
    List<Job> looks_over();
    //修改职位信息等级
    void update_job_level(int did,int level);
    //修改职位兼职类型
    void update_jobType_name(int did,String jobType_name);
    //修改逾期扣费比列
    void update_deduct_salary(int did,double deduct_salary);
    //查询所有已经结束的工作
    List<Job> completed();
    //查询所有兼职人员兼职信息（进行中和已完成的兼职信息）
    List<Job> worker();
    //兼职人员兼职工作
    void addWorker(Job job);
    //结束工作，更改兼职人员职位工作状态
    void update_work_stare(int did);
    //结束工作更改项目状态
    void update_stare(int did);
}
